pull: Only fetch all refs if we're mirroring
authorColin Walters <walters@verbum.org>
Tue, 1 Sep 2015 02:54:04 +0000 (22:54 -0400)
committerColin Walters <walters@verbum.org>
Tue, 1 Sep 2015 02:59:08 +0000 (22:59 -0400)
I noticed xdg-app was looping trying to fetch 1427 refs.  We
don't want to do that unless asked to.

(And also, we need to make static delta requests async)

src/libostree/ostree-repo-pull.c

index 74acad5c5f60494daf395e496d951c094f386f6e..e82340abdcd94943572231ed219ab3f5f636edb1 100644 (file)
@@ -1932,7 +1932,8 @@ ostree_repo_pull_with_options (OstreeRepo             *self,
             if (!ostree_validate_rev (refname, error))
               goto out;
 
-            g_hash_table_insert (requested_refs_to_fetch, g_strdup (refname), NULL);
+            if (pull_data->is_mirror && !refs_to_fetch)
+              g_hash_table_insert (requested_refs_to_fetch, g_strdup (refname), NULL);
           }
 
         additional_metadata = g_variant_get_child_value (pull_data->summary, 1);